#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

int main() {
    std::string alphabet_RUS = "ЙЦУКЕНГШЩЗХЪЁФЫВАПРОЛДЖЭЯЧСМИТЬБЮ";
    std::string alphabet_ENG = "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM";
    std::string input;
    std::cout << "Введите слова разделенные пробелами: ";
    std::getline(std::cin, input);
    
    std::vector<std::string> stroka;
    std::string word;
    for (char c : input) {
        if (c == ' ') {
            stroka.push_back(word);
            word = "";
        } else {
            word += c;
        }
    }
    stroka.push_back(word);
    
    std::cout << "Кол-во слов: " << stroka.size() << std::endl;
    
    int k = 0;
    for (const std::string& word : stroka) {
        if (alphabet_RUS.find(word[0]) != std::string::npos) {
            k++;
        }
    }
    std::cout << "Кол-во слов начинающихся с заглавной русской буквы: " << k << std::endl;
    
    int l = 0;
    for (const std::string& word : stroka) {
        if (std::any_of(word.begin(), word.end(), [&](char c) { return alphabet_ENG.find(c) != std::string::npos; })) {
            l++;
        }
    }
    std::cout << "Кол-во слов имеющие латинскую букву: " << l << std::endl;
    
    int m = 0;
    for (const std::string& word : stroka) {
        if (word.length() <= 3) {
            m++;
        }
    }
    std::cout << "Кол-во слов не превышающих 3 символа: " << m << std::endl;
    
    int n = 0;
    for (const std::string& word : stroka) {
        if (word.find('-') != std::string::npos) {
            n++;
        }
    }
    std::cout << "Кол-во слов в составе которых есть дефис: " << n << std::endl;
    
    std::cout << std::endl;
    
    std::string longest_word = *std::max_element(stroka.begin(), stroka.end(), [](const std::string& a, const std::string& b) {
        return a.length() < b.length();
    });
    std::cout << "Самое длинное слово: " << longest_word << std::endl;
    std::cout << "Его длинна: " << longest_word.length() << " символов" << std::endl;
    
    return 0;
}